package 接口;

/*
 问题描述：
  如果多个方法之间有大量的重复代码，我们可以抽取一个公共方法来解决代码冗余
  但是这个公共的方法不应该让实现类使用及访问，应该是私有化的

 解决方法：
   定义接口私有方法
   格式：
   1、普通私有方法，解决多个默认方法之间的代码重复问题
   private 返回值类型 方法名称 (参数列表){
       //方法体
   }
   2、静态私有方法，解决多个静态方法之间的代码重复问题
   private static 返回值类型 方法名称 (参数列表){
           //方法体
   }

 * */
public interface 接口私有定义 {
    public default void methodDefault01() {
        System.out.println("默认方法1");
        methodRepeat();
        // System.out.println("AAA");
        // System.out.println("BBB");
        // System.out.println("CCC");

    }

    public default void methodDefault02() {
        System.out.println("默认方法2");
        methodRepeat();
        // System.out.println("AAA");
        // System.out.println("BBB");
        // System.out.println("CCC");

    }

    //对于重复的代码，可以定义
    private void methodRepeat() {
        System.out.println("AAA");
        System.out.println("BBB");
        System.out.println("CCC");
    }
}
